package com.sqfw.project.wp.mapper;

import java.util.List;
import com.sqfw.project.wp.domain.WpBackInfo;
import com.sqfw.project.wp.domain.vo.WpBackInfoVO;
import com.sqfw.project.wpReport.domain.SeatEvaluateReport;
import com.sqfw.project.wpReport.domain.WpInfoEvaluate;
import com.sqfw.project.wpReport.domain.dto.BackCountDTO;
import org.springframework.stereotype.Component;

/**
 * 工单退回表Mapper接口
 * 
 * @author lx
 * @date 2023-06-07
 */
@Component
public interface WpBackInfoMapper 
{
    /**
     * 查询工单退回表
     * 
     * @param scid 工单退回表主键
     * @return 工单退回表
     */
    public WpBackInfo selectWpBackInfoByScid(String scid);

    /**
     * 查询工单退回表列表
     * 
     * @param wpBackInfo 工单退回表
     * @return 工单退回表集合
     */
    public List<WpBackInfo> selectWpBackInfoList(WpBackInfo wpBackInfo);

    /**
     * 新增工单退回表
     * 
     * @param wpBackInfo 工单退回表
     * @return 结果
     */
    public int insertWpBackInfo(WpBackInfo wpBackInfo);

    /**
     * 修改工单退回表
     * 
     * @param wpBackInfo 工单退回表
     * @return 结果
     */
    public int updateWpBackInfo(WpBackInfo wpBackInfo);

    /**
     * 删除工单退回表
     * 
     * @param scid 工单退回表主键
     * @return 结果
     */
    public int deleteWpBackInfoByScid(String scid);

    /**
     * 批量删除工单退回表
     * 
     * @param scids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteWpBackInfoByScids(String[] scids);

    public List<WpInfoEvaluate> evaluateSelectWpBackInfoList(WpBackInfo wpBackInfo);

    public List<BackCountDTO> countWpBackInfoGroupByBackClass(WpBackInfo wpBackInfo);

    public List<String> selectRecoverCountWpids(WpBackInfo wpBackInfo);

    List<String> selectWpBackInfoListByWpids(WpBackInfo wpBackInfo);

    List<WpBackInfoVO> selectBackClassSplit(WpBackInfo wpBackInfo);

}
